鍍金池/ 問答/ C++問答
練命 回答

1、PHP對(duì)遞歸是有限制的,遞歸次數(shù)過多就會(huì)出現(xiàn)溢出報(bào)錯(cuò)。
2、在理論上,所有的遞歸都可以用循環(huán)替代。
3、生成HTML樹的難點(diǎn)在于html的閉合標(biāo)簽如:</ul>。

可以參考:PHP無限級(jí)分類的實(shí)現(xiàn)(不使用遞歸) http://www.cnblogs.com/rainma...

慢半拍 回答

你的程序表明你開的是局部變量而不是全局變量(關(guān)于全局和局部變量你可以參考C++ 全局變量、局部變量、靜態(tài)全局變量、靜態(tài)局部變量的區(qū)別)。
所以你的數(shù)組是開在棧上的,這就涉及到編譯期限制棧大小的問題。如果你申請(qǐng)這么大的數(shù)組是會(huì)stackoverflow的,我記得我原來用devc++寫oj的時(shí)候開了一個(gè)100000的數(shù)組好像就爆棧了,但是現(xiàn)在換到osx的clion下面好像沒事了...
在一般情況下, 不同平臺(tái)默認(rèn)棧大小如下(僅供參考)

SunOS/Solaris 8172K bytes (Shared Version)

Linux 10240K bytes

Windows 1024K bytes (Release Version)

AIX 65536K bytes

當(dāng)然你可以修改你的默認(rèn)棧大?。?

1.SunOS/Solaris系統(tǒng):
limit # 顯示當(dāng)前用戶的棧大小
unlimit # 將當(dāng)前用戶的棧大小改為不限制大小
setenv STACKSIZE 32768 #設(shè)置當(dāng)前用戶的棧大小為 32M bytes

2.Linux系統(tǒng):
ulimit -a #顯示當(dāng)前用戶的棧大小
ulimit -s 32768 #將當(dāng)前用戶的棧大小設(shè)置為32M bytes

3.Windows (在編譯過程中的設(shè)置)

  • 選擇 "Project->Setting".
  • 選擇 "Link".
  • 選擇 "Category"中的 "Output".
  • 在 "Stack allocations"中的"Reserve:"中輸棧的大小,例如: 32768

在 Visual Studio 開發(fā)環(huán)境中設(shè)置此鏈接器選項(xiàng)

  • 打開此項(xiàng)目的“屬性頁”對(duì)話框。有關(guān)詳細(xì)信息,請(qǐng)參見設(shè)置 Visual C++ 項(xiàng)目屬性。
  • 單擊“鏈接器”文件夾。
  • 單擊“系統(tǒng)”屬性頁。
  • 修改下列任一屬性:
  • 堆棧提交大小
  • 堆棧保留大小

Reference

大濕胸 回答

1.動(dòng)態(tài)添加的dom元素肯定沒辦法綁定事件的
2.看你應(yīng)該是用vue寫的,vue的思想就是不要直接操作dom。應(yīng)該要數(shù)據(jù)驅(qū)動(dòng),也就是說你要添加dom。其實(shí)要添加的是數(shù)據(jù),所以你可以理解為你的配方列表是一個(gè)數(shù)據(jù),在模板里把這個(gè)數(shù)據(jù)渲染成dom。點(diǎn)擊添加的時(shí)候往這個(gè)數(shù)組里加一條數(shù)據(jù),dom自然就更新了

舊螢火 回答

p指向int的信息是給編譯器進(jìn)行靜態(tài)檢查用的,在編譯后的程序里是沒有記錄p指向的是一個(gè)int
圖片描述

如圖所示,我上面兩個(gè)函數(shù),雖然指針類型不一樣,但編譯結(jié)果是一樣的
https://godbolt.org/
你可以在這個(gè)網(wǎng)站里在線把C編譯成匯編

陪我終 回答

前 2 個(gè)是警告,如果你執(zhí)意要這樣用(也就是你明白你在做什么)可以不用理會(huì)。鑒于你可能不太明白,給你解釋下為什么警告:第一個(gè),你使用的編譯器的 sqrt 函數(shù)返回的是 long double 類型,而你把它賦值給了 long 類型的變量 b,改正方法要么把 b 改成 long double 類型,要么把 sqrt 的結(jié)果改成 long 類型;第二個(gè),你把 long 類型的值用在了邏輯表達(dá)式里面,雖然事實(shí)上是允許的(要不就報(bào) error,而不是 warning 了),但可能對(duì)性能有影響,不建議這樣用。

下面的那個(gè) error,先說為什么錯(cuò):現(xiàn)在這個(gè)階段,你可以簡單把左值理解為賦值號(hào)( = )的左邊的東西,你寫的 b*b=a+100 中就是 b*b,這種寫法是不對(duì)的。

再說你的程序本意:從程序里面看,你應(yīng)該是要比較 b*b 和 a+100,而不是賦值,所以應(yīng)該寫成 b*b == a+100

最后再談?wù)勀愕膶W(xué)習(xí)方法:猜測(cè)你可能沒有系統(tǒng)學(xué)習(xí)過計(jì)算機(jī)知識(shí)(或者單純的編程知識(shí)),可能還可能是在自學(xué),我個(gè)人是不建議直接學(xué) C 的,可以學(xué)下 Python 等動(dòng)態(tài)語言。雖然現(xiàn)在大學(xué)計(jì)算機(jī)系都是用 C 作為入門課程的,因?yàn)樗麄冇X得大家在高中都已經(jīng)有可計(jì)算機(jī)系統(tǒng)的知識(shí)(高中說我也很無奈?。6愦_實(shí)要學(xué)習(xí) C 的話,我建議你先寫正確語法(就是編譯器不報(bào) error),再寫正確語意(連 warning 也沒有了)。語法的話,每一本 C 語言教材都會(huì)說,語意的話除了自己領(lǐng)會(huì),像 C 陷阱與缺陷、你必須知道的495個(gè)C語言問題 等書也會(huì)講很多案例。

撥弦 回答

收到RST的socket,第一次觸發(fā)可讀,read返回-1并設(shè)置errno,不close得話,繼續(xù)觸發(fā)可讀,再read便會(huì)返回0。

魚梓 回答

Webkit,了解一下。
調(diào)試的話,老早做的Qt4版本沒有控制臺(tái),不過有個(gè)調(diào)試類可以嘗試用一下QWebInspector,把他嵌入到一個(gè)QDialog用即可,就像這樣:

QDialog dlg;

QWebInspector *i = new QWebInspector(this);
dlg.setLayout(new QVBoxLayout());
dlg.layout()->addWidget(i);
dlg.setModal(false);
dlg.show();
dlg.raise();
dlg.activateWindow();
電腦C盤每個(gè)文件夾作用:

1、Documents and Settings是什么文件?答案:是系統(tǒng)用戶設(shè)置文件夾,包括各個(gè)用戶的文檔、收藏夾、上網(wǎng)瀏覽信息、配置文件等。補(bǔ):這里面的東西不要隨便刪除,這保存著所有用戶的文檔和賬戶設(shè)置,如果刪除就會(huì)重新啟動(dòng)不能登陸的情況,尤其是里面的default user、all users、administrator和以你當(dāng)前登陸用戶名的文件夾。

2、Favorites是什么文件?答案:是收藏夾,存放你喜歡的網(wǎng)址??梢栽谄渲蟹啪W(wǎng)址快捷方式和文件夾快捷方式,可以新建類別(文件夾)。
 
3、Program Files是什么文件?答案:應(yīng)用軟件文件夾 裝軟件的默認(rèn)路徑一般是這里!當(dāng)然里面也有些系統(tǒng)自身的一些應(yīng)用程序。

4、Common Files是什么文件?答案:Common Files. 這個(gè)文件夾中包含了應(yīng)用程序用來共享的文件,很重要,不能亂刪除 Common Files這個(gè)文件是操作系統(tǒng)包擴(kuò)系統(tǒng)程序和應(yīng)用程序 Common Files是應(yīng)用程序運(yùn)行庫文件數(shù)據(jù)庫覆蓋了大約1000多個(gè)最流行的應(yīng)用程序的插件,補(bǔ)丁等等 文件夾common files里很多都是系統(tǒng)文件,不能隨意刪除,除非確定知道是干什么用的,沒用的可以刪掉。不過就算刪掉了有用的東西,也沒大的關(guān)系,頂多是某些軟件用不了,不會(huì)造成系統(tǒng)崩潰。

5、ComPlus Applications是什么文件? 答案:ComPlus Applications: 微軟COM+ 組件使用的文件夾,刪除后可能引起COM+ 組件不能運(yùn)行。

6、DIFX是什么文件?答案:不可以刪除,已有的XML數(shù)據(jù)索引方法從實(shí)現(xiàn)思想上可分為兩類:結(jié)構(gòu)歸納法和節(jié)點(diǎn)定位法.這兩種方法都存在一定的問題,結(jié)構(gòu)歸納法的缺點(diǎn)是索引規(guī)模較大而且難以有效支持較復(fù)雜的查詢,而節(jié)點(diǎn)定位法的主要缺點(diǎn)是容易形成過多的連接操作.針對(duì)這些問題,提出了一種新的動(dòng)態(tài)的XML索引體系DifX,它擴(kuò)展了已有的動(dòng)態(tài)索引方法,采用一種動(dòng)態(tài)的Bisimilarity的概念,可以根據(jù)實(shí)際查詢需求以及最優(yōu)化的要求動(dòng)態(tài)決定索引中保存的結(jié)構(gòu)信息,以實(shí)現(xiàn)對(duì)各種形式的查詢最有效的支持.實(shí)驗(yàn)結(jié)果證明DifX是一種有效而且高效的XML索引方法,其可以獲得比已有的XML索引方法更高的查詢執(zhí)行效率.。

7、Internet Explorer是什么文件?答案:不用說了,肯定不能刪除,IE,瀏覽網(wǎng)頁的。

8、Kaspersky Lab是什么文件?答案:卡巴斯基的文件包,這個(gè)是卡巴的報(bào)告,在 C:\Documents and Settings\All Users\Application Data\Kaspersky Lab\AVP6\Report 的更新文件中有很多report文件 很占地方的 刪除了就好了, 1利用卡巴自帶的清理功能,但不能完全清理干凈。 2關(guān)閉自我保護(hù),然后將report文件夾下面的文件手動(dòng)刪除。

9、Messenger是什么文件?答案:系統(tǒng)自帶的MSN是完全可以刪除的。 相信有不少人都在使用MSN,可能有同樣的經(jīng)歷,安裝完 新的MSN 后,可每每打開 MSN 首先跳出來的是舊版,而不是新版。即使在系統(tǒng)中刪除了老版本,但過了不久也會(huì)自動(dòng)恢復(fù)回來。 如果要徹底刪除老版本.可以點(diǎn)擊"開始"->"運(yùn)行"-> 代碼: RunDll32 advpack.dll,LaunchINFSection %windir%\INF\msmsgs.inf,BLC.Remove。

10、microsoft frontpage是什么文件?答案:那個(gè)是系統(tǒng)自帶的網(wǎng)頁編輯器。

11、Microsoft Silverlight是什么文件?答案:Silverlight是于Adobe Flash基本相同的軟件,運(yùn)行在瀏覽器中的插件。實(shí)現(xiàn)交互、動(dòng)畫等功能。使用XAML文件支持,支持.net運(yùn)行庫。 program files是Windows操作系統(tǒng)中所有應(yīng)用程序的位置,大是正常的。很多情況都可能造成program files創(chuàng)建文件夾,一般是安裝應(yīng)用程序后創(chuàng)建的。您需要提供出文件夾名稱我們才可以確切的說是不是無用的文件夾。 一般情況這里的文件夾不可以刪除的,如果刪除會(huì)影響系統(tǒng)或應(yīng)用程序無法運(yùn)行。

12、Movie Maker是什么文件?答案:movie maker是 微軟提供的 捆綁系統(tǒng)的一個(gè)視頻編輯軟件 我的這個(gè)文件也是空的,據(jù)猜測(cè),應(yīng)該是ghost版的系統(tǒng)優(yōu)化掉了這個(gè)軟件。 完全可以刪除,不過系統(tǒng)總是重建這個(gè)文件夾。 可以用unlocker軟件刪除。 你無法刪除的原因是仍然有桌面進(jìn)程調(diào)用這個(gè)文件。 不解除鎖定是無法刪除的。

13、MSBuild是什么文件?答案:沒找到,應(yīng)該是系統(tǒng)相關(guān)的,最好別刪!

14、MSN Gaming Zone是什么文件?答案:一些系統(tǒng)自帶的撲克牌等小游戲,可以刪除 控制面板-〉添加或刪除程序-〉添加/刪除windows組件,然后在列表里面找到你要?jiǎng)h除的outlook和msn explorer,把前面的勾去掉,就能刪除了。

15、MSXML 6.0是什么文件?答案:msxml 指微軟的xml語言解析器,用來解釋xml語言的。就好像html文本下再到本地,瀏覽器會(huì)檢查html的語法,解釋html文本然后顯示出來一樣。要使用xml文件就一定要用到xml parser。不過不僅僅微軟有,像ibm,sun都有自己的xml parser。

16、NetMeeting是什么文件?答案:是Windows自帶的MSN的文件,如果你不用MSN以及Outlook Express,你完全可以把它刪掉。 不過也占不多大地方的。是Windows自帶的MSN的文件,如果你不用MSN以及Outlook Express,你完全可以把它刪掉。不過還是推薦看下網(wǎng)上的卸載方式,畢竟用系統(tǒng)自帶的卸載方式比較安全。NetMeeting文件夾是系統(tǒng)自帶的有關(guān)遠(yuǎn)程控制的部分,你刪掉后這個(gè)功能不能使用,但不影響正常操作,但是由于是系統(tǒng)自帶所以會(huì)自動(dòng)生成,也有病毒喜歡潛伏在此文件夾內(nèi),不過并不是簡單的通過刪除文件夾可以解決的 NetUpdateService.exe這個(gè)進(jìn)程如果用戶名項(xiàng)是system的話應(yīng)該就是你的自動(dòng)更新服務(wù)了,如果不用自動(dòng)更新的話最好關(guān)掉,省得浪費(fèi)資源。

17、Online Services是什么文件?答案:上網(wǎng)用的!不能刪除!

18、Outlook Express是什么文件?答案:Outlook express 是Windows內(nèi)置的郵件收發(fā)端 他的作用就是你不必每次登郵箱都要上網(wǎng)頁只要打開outlook express就可以收發(fā)郵件了?。。。?!級(jí)別:先知是收發(fā)電子郵件的軟件。 他是一個(gè)收發(fā)電子郵件的軟件,由微軟研發(fā)。

19、Reference Assemblies是什么文件?答案:系統(tǒng)相關(guān)的!最好別刪除。

20、SigmaTel是什么文件?答案:這個(gè)文件是有用的文件!此文件是計(jì)算機(jī)聲卡的驅(qū)動(dòng)!注意!系統(tǒng)磁盤里的文件不懂的話,千萬不可亂刪除哦!

21、VMware是什么文件?答案:系統(tǒng)文件,不要亂動(dòng)。

22、Windows Media Connect 2是什么文件?答案:程序的東西,別刪除!

23、Windows Media Player是什么文件?答案:是系統(tǒng)自身的一個(gè)播放軟件!

24、Windows Media Player 答案:使用 Microsoft Windows Media Player,您可以播放和組織計(jì)算機(jī)和 Internet 上的數(shù)字媒體文件。這就好象把收音機(jī)、視頻播放機(jī)、CD 播放機(jī)和信息數(shù)據(jù)庫等都裝入了一個(gè)應(yīng)用程序中。使用 Windows Media Player,您可以收聽世界各地電臺(tái)的廣播、播放和復(fù)制您的 CD、查找在 Internet 上提供的視頻,還可以創(chuàng)建您的計(jì)算機(jī)上所有數(shù)字媒體文件的自定義列表。 總之,就是一種多媒體播放器,集視頻與音頻于一身。

25、Windows NT是什么文件?答案:一種網(wǎng)絡(luò)操作系統(tǒng),特點(diǎn)如下: 1.將聯(lián)網(wǎng)能力加入到操作系統(tǒng)中,使之成為操作系統(tǒng)功能的一個(gè)組成部分。 2.系統(tǒng)直接支持網(wǎng)絡(luò)上各主機(jī)之間的文件復(fù)制、用戶之間的電子郵件、支持作為仿真終端實(shí)現(xiàn)對(duì)遠(yuǎn)程主機(jī)的登錄等等。而用戶不需要在機(jī)器上再安裝此類網(wǎng)絡(luò)服務(wù)軟件。 3.由于系統(tǒng)支持多個(gè)網(wǎng)絡(luò)協(xié)議,因此對(duì)現(xiàn)存的多種網(wǎng)絡(luò)、網(wǎng)絡(luò)服務(wù)器,都能很容易地實(shí)現(xiàn)數(shù)據(jù)交換4.網(wǎng)絡(luò)具有開放式結(jié)構(gòu),網(wǎng)絡(luò)中使用地各種數(shù)據(jù)傳輸、網(wǎng)絡(luò)驅(qū)動(dòng)程序都可以被動(dòng)態(tài)地裝入和卸出,而且不同種類地功能部件可以并存。這些都有利于網(wǎng)絡(luò)功能地修改和擴(kuò)充。

26、WinRAR是什么文件?答案:winrar,是一款比較優(yōu)秀的壓縮解壓縮軟件,支持鼠標(biāo)拖放及外殼擴(kuò)展,完美支持 ZIP 檔案,內(nèi)置程序可以解開 CAB、ARJ、LZH、TAR、GZ、ACE、UUE、BZ2、JAR、ISO 等多種類型的壓縮文件;具有估計(jì)壓縮功能,你可以在壓縮文件之前得到用 ZIP 和 RAR 兩種壓縮工具各三種壓縮方式下的大概壓縮率;具有歷史記錄和收藏夾功能;壓縮率相當(dāng)高,而資源占用相對(duì)較少、固定壓縮、多媒體壓縮和多卷自釋放壓縮是大多壓縮工具所不具備的;使用非常簡單方便,配置選項(xiàng)不多,僅在資源管理器中就可以完成你想做的工作;對(duì)于 ZIP 和 RAR 的自釋放檔案文件( DOS 和 WINDOWS 格式均可),點(diǎn)擊屬性就可以輕易知道此文件的壓縮屬性,如果有注釋,還能在屬性中查看其內(nèi)容。

27、Xerox是什么文件?答案:Xerox文件夾是XP自己安裝的,為自帶的一些圖像處理軟件作臨時(shí)空間用。 文件夾的名稱源自Microsoft采用了Xerox公司授權(quán)的技術(shù),該文件夾受WFP (Windows File Protection)保護(hù),所以不可能(也沒必要)刪除。 ATI Technologies是顯卡控制程序,跟電腦芯片有關(guān),不要?jiǎng)铀?Online Services是網(wǎng)絡(luò)服務(wù)文件夾 NetMeeting是MS最早基于IP聊天的一種工具,Netmeeting功能強(qiáng)大,除了語音、視頻,它還有文字聊天、電子白板、文件傳送、程序共享等等。 可以刪除 不過,在這個(gè)文件夾內(nèi)的文件夾都是比較重要的,或者經(jīng)常用的,最好不要?jiǎng)?,弄不好就?huì)對(duì)系統(tǒng)造成影響,還不好恢復(fù)。

>>原文來源<<

哎呦喂 回答
  • Because msvc's support for constexpr is a shit. When static_assert see IsBaseOf<A, B>::value, it is not regarded as const expression: http://rextester.com/ATOC6638
  • So, it is not your fault, just msvc's bug. You can test your codes on gcc/clang, both will compile happily :http://rextester.com/IWU81465
尛曖昧 回答

主要原因就是unique_ptrshared_ptr更輕,沒有運(yùn)行時(shí)負(fù)擔(dān),所以unique_ptr的刪除器是編譯期確定的。

兩個(gè)unique_ptr即使指向類型相同,若刪除器不同,也屬于不同類型。unique_ptr的刪除器已經(jīng)內(nèi)植于類型,所以不需要存儲(chǔ)一個(gè)刪除器對(duì)象就知道刪除器在哪?!邦愋蛢?nèi)植”過程是編譯期確定的,刪除過程的代碼的運(yùn)行當(dāng)然是運(yùn)行期運(yùn)行的。

shared_ptr就不同,構(gòu)造函數(shù)傳進(jìn)來一個(gè)實(shí)實(shí)在在的對(duì)象,它存儲(chǔ)起來用?!皩?duì)象存儲(chǔ)”過程是運(yùn)行期確定的,刪除過程的代碼的運(yùn)行當(dāng)然也是運(yùn)行期運(yùn)行的。shared_ptr的靈活性更高。

浪蕩不羈 回答

我覺得要對(duì)照上下文來看吧。

只看你貼出來的片段,意思是不是說子程序不能(或者是不應(yīng)該)依賴于它之前的執(zhí)行過程,而只是忠實(shí)地執(zhí)行調(diào)用方讓他做的工作。做完之后,要負(fù)責(zé)把自己的工作現(xiàn)場清理干凈?

比如說,對(duì)于子程序,就是每次執(zhí)行的時(shí)候都會(huì)在系統(tǒng)中殘留文件、殘留句柄、殘留堆棧等等,并且下次被調(diào)用的時(shí)候,還會(huì)讀取這些殘留信息,并且影響下次執(zhí)行效果?

慢半拍 回答

clipboard.png
應(yīng)該是你沒有掛載上

首頁 上一頁 26 27 28 29 30 31 32 33 下一頁 尾頁