青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

隨筆-90  評論-947  文章-0  trackbacks-0
共12頁: First 4 5 6 7 8 9 10 11 12 
哈,關注~
@OwnWaterloo

那個反向迭代器,是不是可以把正向迭代器當模板參數,在++里讓正向迭代器--,在--里讓正向迭代器的++,正向迭代器的end狀態當成反向迭代器的end狀態?
@OwnWaterloo

其實我個人基本不怎么會去繼承,也基本不會去多態,我喜歡用組合。但是難保別人不會,所以我經常隨手丟下虛析構函數
@OwnWaterloo

這么說來好像也很有道理...發現OOP的影子被你砍得一點不剩了,哈哈
@OwnWaterloo

一般來說,虛析構函數用于告訴使用者該類“可繼承”,是嗎?既然這里沒有什么不可告人的秘密,那么就隨他去好了。(當然,如果有人真要繼承,則必須了解里面的運作機制。這是他自己的事。)這樣理解可以嗎?
@OwnWaterloo

定義一個相似的類?
@OwnWaterloo

放著讓好事者(也就是將來某一時刻的我自己)去繼承...
@codejie
那,木有了
enum T
{
T1 = 0,
T2,
// ...
Tn,
T_MAX
};

讀 T_MAX 確定個數
@OwnWaterloo

就是傳說中可以打包提交的?
我以前有一陣子一直在找代碼托管,可惜都開源的,google code 只允許有一個私人項目。。。可我哪有那么多東西能拿出手呀,,于是,只好在自己機器搭了個svn。。
@zdhsoft

google那個規則怎么樣的?別人可以改我的嗎?
re: C++完美實現Singleton模式 溪流 2009-11-11 09:56
“線程安全”其實也沒有那么必要處處提到的,有點過于炒作的感覺。真要計較起來,大部分代碼都不是線程安全的。
@OwnWaterloo
這點有點明白了,一開始多了,而以后必須向下兼容,于是肩上的包袱就永遠卸不下來了,是嗎?
@OwnWaterloo

添加到無法再添加 我并不十分支持。
但是 減少直到無法減少,我也不盡贊同。我覺得 STL 里的東西,就是這種狀況,要什么沒什么,只能根據已有的少得可憐的東西去湊出來,換句話說,要用到日常開發中來,經常需要自己再包一層。

我覺得還是以方便使用為原則合理添加一些可有可無的東西比較好。。。

——目前的觀點,呵呵
@OwnWaterloo
1、這種巧合就是你先前說的GP中的“契約”吧。我心里就是有道坎跨不過去,覺得沒法在語法層面顯式呈現這個契約,,,唉

2、關于零依賴
我知道很多東西不可能做到零依賴,或者做到零依賴代價很大。
只是我的設想是,在一套東西里,有一個基礎部分,它只和語言特性有關、只有邏輯意義,這一部分要保持零依賴。其它實現各種實際功能的東西,可以有選擇的去依賴別的。如果把 Format 看成 String 的一種擴展功能,我本身在寫 String,為了實現 String 的一個功能,去使用了現有庫的這種功能,那我不過在做包裝而已,而不是寫東西了。

也許 Format 也算不上純屬 String 的功能,你后面給我的啟示看上去很有意義……

3、
multimap 確實不是這個語義,可能可以勉強湊合吧。只是我想不到非用 multimap 的場合……

我原本想搞個
template <typename IFirst, typename ISecond>
class ComplexIterator

想先 ISecond ++ 上去,到 End() 了 IFirst++,ISecond=IFirst->Begin()

然后直接 typedef ComplexIterator<typename Set<List<T>>::Iterator, typename List<T>::Iterator> MultiSet::Iterator

后來發現需要迭代器自己確定自己是否是 Begin,于是暫時放棄

關于反向迭代器,以及正向的,我一開始想各個容器能否以某種形式提供某一個 ++,-- 的機制,然后統一實現 Iterator,但是想不好用怎樣的形式……



@lo

呵呵,雖然其實一樣,不過也算個手段~
@expter

謝謝支持!
@CornerZhang

是。追溯到很久以前,其實我發明輪子的最初動力是 STL 里的 string 太難用。我就是想提供不一樣的使用方式。也排斥迭代器。最早寫的是一個類 vector 的東西,就不提供迭代器,照樣可以用得很爽。到要寫 List 的時候,就不行了,如果要不暴露結點,那么必須有類似迭代器的一套東西了。于是回過頭來想想 STL 的這套方式,覺得倒真不錯。所以又反過來學著它了。
@OwnWaterloo

那么說基本上不可以咯?
re: typedef用法小結 溪流 2009-11-06 09:44
恕我2b了,第二種是什么用法?
LZ 也沒有搞得很清楚么。。。

另外,CString 可能是 CStringW/CStringA,在與 string 轉換時,如果是 CStringW,還涉及編碼轉換問題。下面以 CStringA 來說明。

 

1 string to CString  

  CString.format("%s",string.c_str());

 

CStringA = string.c_str() 就可以了

 

2 CString to string

string str(CString.GetBuffer(str.GetLength()));

 

GetBuffer 有參數的話,可能導致內部的分配空間動作,要進行后續 ReleaseBuffer 操作。


string = CStringA


string = CStringA.GetBuffer();

 



3 string to char *

char *p=string.c_str();

4 char * to string

string str(char*);

5 CString to char *

strcpy(char *,CString,sizeof(char));

按照 3 風格,這里應該 char *  = CStringA; 或者 char *p = CStringA.GetBuffer();

 

6 char * to CString

CStringA = char * 就可以了

 

這種使用方式看上去還是很爽的
同求消息機制
mark. thx.
re: C++引用優于指針 溪流 2009-10-27 16:59
@Johnson
一種認為指針優于引用的理由是,指針有時候更醒目,提醒開發人員,該函數要對傳入參數進行修改:


我也這么認為
re: C++引用優于指針 溪流 2009-10-27 16:59
@Johnson

RE。這一段不知道摟住再說什么
Win32 Console Application 不是運行在DOS虛擬機(NTVDM)下的,它是一個真真實實的 Win32 程序。它同樣可以使用 MFC 中的類。

與 GUI 程序相比,其實只是 PE 頭中一處標記不同而已。
被這樣面試過,就是被刷了也服了
@路人
這個說法好不嚴謹,這條射線與多邊形頂點相交、與邊重合的情況
@Ocean.Tu

“像女生的裙子”是怎么樣的?
@陳梓瀚(vczh)

所以堅決 Unicode、遠離庫函數嘛~
文件讀寫我覺得還是直接用 API 比較好。特別是文本文件。
1、反正不可能跨平臺
2、為了更好的支持 Unicode
re: 很傻很天真之Array 溪流 2009-10-12 13:02
@陳梓瀚(vczh)

嗯!這個方法不錯!
re: 很傻很天真之Array 溪流 2009-10-12 11:35
這樣能過:

class ArrayDimension
{
public:
int Data[MAX_ARRAY];
int Dimension;

ArrayDimension();
ArrayDimension(const int index);
ArrayDimension(const ArrayDimension &that);
ArrayDimension& operator,(const int index);
};


template<typename _Type>
class Array
{
private:
ArrayDimension DimensionInfo;

public:
Array(const ArrayDimension Info);
};

Array<int> arr((3, 2, 1));
@foxinhongyan

在追求性能的地方(如 ACM),通常不容易看到好代碼:)
@OwnWaterloo

非常歡迎吐槽~哈哈
關于侵入式和非侵入式,說實話我也是前幾天第一次聽你說。我稍微查了下,不是很確切的了解其含義。前面我在 Iterator 里放了個 Array *m_pArray,后來拿掉了,改成放一個 ValueType *,有沒有改變侵入式/非侵入式方面的屬性呢?
@OwnWaterloo

讀了這么多文字,真是受益良多。

但必須指出的是,上面對于 OOP 和 GP 的某些比較是不公平的。在 OOP 中,只有你需要去繼承它的時候(即你需要修改這個類),你才需要了解源代碼,需要了解跟實現相關的“契約”。如果僅僅是使用的話,那么,給出全部 public class 的 public method 的聲明,應該所有的使用者都不會犯語法錯誤,編譯器會提供完備的類型檢查。而同樣是使用(并不是去修改),GP 中,卻需要去了解它的實現,這不是很不公平嗎?我們不是追求為了隱藏不必要的細節,讓使用者減輕負擔嗎?當然,如果要去修改它,那么對它的實現是必須要了解的了。
@陳梓瀚(vczh)

我覺得,出現在具體實現上的編譯錯誤,本不應該留給用戶的。最好是在類型檢查的時候就能報錯。
@陳梓瀚(vczh)

嗯……iterator 一般有哪些約定成俗的規則?
@陳梓瀚(vczh)

virtual IEnumerator<T>* CreateEnumerator()const=0;

這個,到使用的時候:
IEnumerator<T>* p = CreateEnumerator();
然后求用戶去 delete 嗎?
@OwnWaterloo

如果有個 template <T> where T is IIterator,用戶看接口定義就知道該怎么做了;可是現在,只能到調用 Iterator 的某個具體方法的時候才報錯,用戶理解這個錯誤,就要理解我的實現了。這不僅增加了學習代價,還在一定程度上違背了封裝的初衷,不是么?一點變通的辦法都沒有嗎?
何處下載?
re: 開始把庫搞起來了 溪流 2009-09-28 00:27
@OwnWaterloo

打算這樣,如何?

namespace xl
{
    typedef unsigned 
char uchar;
    typedef unsigned 
short ushort;
    typedef unsigned 
int uint;
    typedef unsigned 
long ulong;
    typedef 
long long longlong;
    typedef unsigned 
long long ulonglong;

    typedef wchar_t wchar;
    typedef unsigned wchar uwchar;

    typedef __int8 int8;
    typedef __int16 int16;
    typedef __int32 int32;
    typedef __int64 int64;

    typedef unsigned int8 uint8;
    typedef unsigned int16 uint16;
    typedef unsigned int32 uint32;
    typedef unsigned int64 uint64;

    
struct
    
{
        template
<typename T>
        
operator T*() const
        
{
            
return 0;
        }


    }
 nullptr;

}
 // namespace xl


我的目的主要是為了書寫簡潔,其他的其實對我來說關系不大,暫時主要考慮 Win + MSVC 平臺。nullptr 的定義真的好精妙!
re: 開始把庫搞起來了 溪流 2009-09-27 23:58
@OwnWaterloo

是的,現在是用不著 DWORD,但是以后一些功能庫會用到。
stdint.h 中的類型名稱似乎也不怎么干凈利索。
要不就直接用標準名稱好了?只是我很不喜歡 unsigned int, size_t 這種寫法。
re: 開始把庫搞起來了 溪流 2009-09-27 22:35
@OwnWaterloo

1、關于 typedef

第一,我想我要寫的庫要保持獨立性。如果去包含了 Winows.h 了,那么就失去了這一部分的獨立性了。在做容器方面的東西的時候,實際上我根本不會用到 Windwos API,而這一 include,增加無畏的依賴的同時,還把平臺陷死了(雖然我不準備搞多么跨平臺的東西,但是明明可以不依賴的,還是不要去依賴,是嗎?)

我想,庫的用戶可能不需要去寫太多次 a::DWORD、b::DWORD,只要他們的定義是兼容的,傳入的值就可以用。

其實我最頭痛的就是 Windows.h 把這些名字都占去了,而且是全局的,是的用戶無法簡單地寫一個 DWORD 來定義 Windows.h 中的 DWORD 了。我知道加前綴不是好的解決方案,可是還有其他一套如此通用的名字嗎?
re: 開始把庫搞起來了 溪流 2009-09-27 20:33
@OwnWaterloo

先謝過您的這么詳細的指點。等我仔細看過后再來提后續問題:)
@Pencil.C++

呵呵,客氣客氣。我也想著什么時候出個新版本,然后把舊版也開源開源,可就是沒時間搞了,郁悶~
re: 開始把庫搞起來了 溪流 2009-09-27 15:51
@陳梓瀚(vczh)

你的意思是說 Tree::Node 沒必要暴露出來嗎?再問一下問一下,你覺得基礎庫里有必要存在二叉樹這種結構嗎?還有沒有必要以及可能包含圖的結構呢?
re: 開始把庫搞起來了 溪流 2009-09-27 15:49
@陳梓瀚(vczh)

陳老師你好,我一年多前實習的時候因為公司不允許使用STL、MFC等等所有流行的庫,叫我們“用到的數據結構自己寫”。當時只寫了個 Vector、String,足以應付任務了。不過我就是從那時開始明白寫庫的意義,以及感受到用自己的庫的那種爽快的感覺的。

很佩服你的技術,粗看過你的代碼,我知道你把基礎數據結構全部實現了一遍,甚至regex,以及在代碼里寫 EBNF,等等。(我第一篇日志的開頭語不知道您看過了沒,呵呵)

我也想不走老路,不過有些東西可能不走一遍不會明白,所以我想可能先自然一點,到第二遍、第三遍再來總結以及回避已知問題。關于你說的4點,我比較想了解原因以及大概做法,可否稍微解釋下?特別是1和2,這個是現在就擺在我面前的。然后是3、4,我可以聽一聽,雖然可能不是馬上體會得到。
請問你這個有沒有發布過,發布名稱叫啥?(我是 xlWarKey 作者,這廂有禮了~)
@msnegg

Why nmake? Why not devenv or VCBuild, or cl ?
共12頁: First 4 5 6 7 8 9 10 11 12 
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            国产精品高潮呻吟久久av无限 | 国产午夜一区二区三区| 国产欧美日韩视频一区二区三区| 欧美性做爰猛烈叫床潮| 国产精品揄拍一区二区| 亚洲精品一区二区三区不| 亚洲国产另类久久精品| 亚洲卡通欧美制服中文| 欧美超级免费视 在线| 一区二区av在线| 欧美成人一区二免费视频软件| 亚洲欧洲av一区二区三区久久| 国产九区一区在线| 亚洲成人中文| 欧美激情第1页| 亚洲一区在线播放| 亚洲精品国产拍免费91在线| 久久久久久有精品国产| 午夜久久久久久久久久一区二区| 亚洲人成亚洲人成在线观看图片 | 亚洲精品一级| 国产精品女主播在线观看| 亚洲一区中文| 亚洲午夜久久久久久尤物| 亚洲国产mv| 欧美成人一区二区三区片免费| 性欧美xxxx大乳国产app| 一区二区三区偷拍| 国产一区二区三区四区| 亚洲日本在线观看| 国产精品欧美日韩一区二区| 亚洲一区二区视频在线观看| 亚洲欧美日韩另类| 国产精品久久久久久久7电影| 国产手机视频一区二区| 牛牛影视久久网| 欧美涩涩视频| 亚洲一区二区三区影院| 老牛嫩草一区二区三区日本 | aaa亚洲精品一二三区| 欧美丰满少妇xxxbbb| 国产欧美一区二区精品性| 亚洲视频一二三| 一本色道久久综合亚洲精品不卡| 99在线|亚洲一区二区| 国产精品xvideos88| 国产综合在线看| 亚洲欧美国产毛片在线| 亚洲一区欧美| 国产精品男女猛烈高潮激情 | 欧美专区在线观看| 极品少妇一区二区| 欧美亚洲成人精品| 久久成人综合网| 夜夜夜久久久| 欧美成人精品高清在线播放| 国产精品久久夜| 99av国产精品欲麻豆| 999亚洲国产精| 久久精品免费播放| 国内精品久久久久伊人av| 欧美伊久线香蕉线新在线| 亚洲日本在线观看| 欧美日韩在线播放三区| 欧美一区视频在线| 一本大道久久a久久综合婷婷 | 国产午夜久久久久| 久久久久看片| 美女精品在线观看| 亚洲成色999久久网站| 欧美日韩a区| 蜜桃av一区二区| 欧美a级在线| 一区二区三区不卡视频在线观看| 亚洲欧洲av一区二区| 久久电影一区| 日韩视频国产视频| 国产精品高清网站| 欧美sm视频| 性欧美超级视频| 亚洲精品欧美| 欧美成人免费视频| 久久精品国产免费观看| 亚洲尤物在线| 国产亚洲毛片| 国产精品视频久久一区| 亚洲欧美国产毛片在线| 久久青青草原一区二区| 亚洲欧美日韩在线一区| 亚洲精品在线一区二区| 在线欧美福利| 国产欧美精品一区| 影音先锋中文字幕一区| 久久久久久999| 亚洲欧美高清| 午夜国产一区| 欧美aa在线视频| 最近中文字幕mv在线一区二区三区四区| 欧美在线免费观看视频| 99天天综合性| 一区二区三区四区五区视频| 亚洲国产另类精品专区| 亚洲女性裸体视频| 欧美一区二区三区四区高清 | 亚洲综合国产精品| 国产精品久久久久久久久免费 | 亚洲欧美国产日韩天堂区| 亚洲精品久久久久久久久| 亚洲人成精品久久久久| 亚洲激情在线激情| 一本在线高清不卡dvd | 免费日韩av片| 欧美一区二区在线| 国产精品久久久久久久久免费| 国产精品乱码久久久久久| 国产欧美一级| 好吊色欧美一区二区三区视频| 欧美怡红院视频| 欧美国产精品久久| 欧美日韩国产精品自在自线| 国产精品久久久久91| 狠狠色噜噜狠狠狠狠色吗综合| 欧美日韩中文字幕精品| 国精品一区二区三区| 亚洲一区二区高清视频| 欧美日韩免费在线| 亚洲福利在线观看| 中国亚洲黄色| 亚洲欧美亚洲| 精久久久久久久久久久| 欧美成人午夜剧场免费观看| 欧美手机在线视频| 激情视频一区二区三区| 欧美一区日韩一区| 欧美一区=区| 一区二区三区国产| 欧美激情欧美狂野欧美精品| 亚洲黄一区二区三区| 欧美一站二站| 黄色小说综合网站| 亚洲欧洲日产国码二区| 性欧美1819sex性高清| 亚洲国产一区二区三区青草影视| 久久精品中文| 亚洲大片av| 久久蜜桃香蕉精品一区二区三区| 亚洲视频欧美视频| 国产手机视频一区二区| 久久久久免费视频| 久久国产欧美日韩精品| 91久久午夜| 欧美在线三区| 久久午夜羞羞影院免费观看| 亚洲精品欧美日韩| 一区二区三区精品视频| 国产精品亚发布| 欧美黄色免费网站| 国产精品久久久久久久午夜 | 性欧美xxxx视频在线观看| 国内精品视频在线播放| 亚洲第一黄色网| 国产精品少妇自拍| 亚洲国产欧美一区二区三区同亚洲 | 久久国产精品99国产精| 亚洲欧洲一区| 亚洲综合日韩中文字幕v在线| 日韩写真在线| 久久综合九九| 欧美在线一级va免费观看| 欧美午夜美女看片| 亚洲天堂网站在线观看视频| 亚洲愉拍自拍另类高清精品| 欧美手机在线| 欧美一区二区高清| 久久亚洲二区| 亚洲电影第1页| 欧美精品一区二区三区一线天视频 | 欧美成人精品1314www| 91久久综合亚洲鲁鲁五月天| 欧美精品粉嫩高潮一区二区 | 国产精品嫩草99a| 亚欧成人在线| 欧美激情一区二区三区在线视频| 亚洲精华国产欧美| 国产精品hd| 久久国产精品一区二区三区| 欧美激情亚洲一区| 欧美在线综合| 在线中文字幕日韩| 亚洲第一色在线| 国产精品视频成人| 欧美成年人网站| 久久成人精品视频| 亚洲少妇自拍| 亚洲人成网站777色婷婷| 久久久水蜜桃av免费网站| 99精品视频一区| 亚洲国产天堂久久综合网| 欧美日韩成人综合| 亚洲精品乱码久久久久久日本蜜臀 |