#include <stdlib.h>
#include <stdio.h>
struct foo{
int id;
char *bar;
char *baz[6];
};
int main(int argc, char **argv){
struct foo f;
f.id=1;
char *qux[6];
f.bar=argv[0];
f.baz=qux; // Marked line
return 1;
}
Run Code Online (Sandbox Code Playgroud)
这只是一些测试代码,所以忽略qux实际上没有任何有用的东西.
我在标记的行上出现错误,incompatible types when assigning to type ‘char *[6]’ from type ‘char **’但两个变量都char *[6]在代码中定义.任何见解?
一个关于NSNotification......的快速问题如果我NSNotifications在一个方法中发布两个,并且它们被不同的对象观察到,选择器方法的执行顺序是什么?
例如,如果我有三个控制器 - 海报、接收器 A 和接收器 B。在海报控制器的功能中,我执行以下操作:
[[NSNotificationCenter defaultCenter] postNotificationName:@"ReceiverADoSomething" object:self];
[[NSNotificationCenter defaultCenter] postNotificationName:@"ReceiverBDoSomething" object:self];
Run Code Online (Sandbox Code Playgroud)
在接收者 A 的 viewDidLoad 方法中:
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(workToDoByA:) name:@"ReceiverADoSomething" object:nil];
Run Code Online (Sandbox Code Playgroud)
在接收者 B 的 viewDidLoad 方法中:
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(workToDoByB:) name:@"ReceiverADoSomething" object:nil];
Run Code Online (Sandbox Code Playgroud)
会先做workToDoByA再做workToDoByB吗?还是会一起被处决?
另一种情况......如果我有海报 A 发布通知,但有两个观察者到同一通知。那么执行顺序是什么?
在此先感谢您的帮助。
我已经看到很多帖子比较了各种选择器查询和DOM遍历方法的速度.当然,在具有数百或数千个元素和O ^ n操作的情况下,它很重要,但在99%的Jquery响应用户操作进行DOM操作(或旋转动画或制作吐司)的情况下,速度确实很重要?
几乎所有JQuery操作都不会比往返服务器更快吗?
设计优化优化的服务器端代码是有意义的.在javascript中负责内存分配和清理是有道理的,因此用户的浏览器不会像Flash大约v5一样运行.在浪费时间优化JQuery/Javascript的速度时,我没有任何意义,除非在测试期间显着减慢页面速度.
有人可以告诉我是否以及为什么我应该开始关心JQuery的速度?
编辑
我的语气无疑是狡猾的,但并不意味着争论.当你需要在这里时,有很好的资源来解决如何进行优化的方法,更好的方式来问我的问题:
次优Javascript/Jquery有什么影响?
如果我没注意到,我应该担心吗?
公认
阅读回复后,我认为这个问题的最佳答案取决于您的项目和团队规模.在程序员没有用户将看到的页面的完整视图的情况下,例如团队在哪里
然后更谨慎和"过早优化"作为常规是有道理的.如果有专业的,专业的前端设计师什么都不做,这是可行的.
在较小的项目上,例如我目前的双人团队:
优先级列表中的所有推送优化.@Anurag的回答帮助我找到了问题的核心并做出了最好的决定.
我正在为一个(哦不,另一个)PHP 框架编写一些零散的内容,作为一种学习经验,并希望将来可以在较小的项目中使用。
我已经阅读了相当多的内容,即现有框架的参考文档。我经常看到“模块”这个词,根据我的阅读和以前的经验,模块是一个用于划分相关代码(视图、控制器、模型等)的概念。
我很好奇,SO 在这种情况下如何看待模块?(上下文是 MVC Web 应用程序架构,或类似的应用程序开发模式)
我正在尝试确定如何最好地应用它,因为(我相信)它适合我当前的困境。对于音乐网站,模块将被视为Artist、Producer等,而控制器将是Profile、Media等。这当然会留下动作,例如View、 或Edit。
这一切看起来都不错,因为现在我可以像这样进行路由:
'Artist/Profile/View/{ALIAS}'
+- Module : Artist
+- Controller : Profile
+- Action : View
//this may be accessed via music.com/artist/{alias}
//defaulting the Controller and Action
Run Code Online (Sandbox Code Playgroud)
..但我试图弄清楚模块概念如何适合这里,特别是我将如何组织或修改我的控制器以适应。
这就是我正在考虑的文件系统布局;
+- Root
+- 'index.php'
+- 'api.php'
+- Modules
| +- Public
| | +- Controllers
| | +- Views
| |
| +- User …Run Code Online (Sandbox Code Playgroud) 这里有一些代码,在做了一些测量之后是一个相当大的瓶颈:
//-----------------------------------------------------------------------------
// Construct dictionary hash set from dictionary file
//-----------------------------------------------------------------------------
void constructDictionary(unordered_set<string> &dict)
{
ifstream wordListFile;
wordListFile.open("dictionary.txt");
std::string word;
while( wordListFile >> word )
{
if( !word.empty() )
{
dict.insert(word);
}
}
wordListFile.close();
}
Run Code Online (Sandbox Code Playgroud)
我正在读大约200,000字,这在我的机器上大约需要240毫秒.ifstream这里使用效率高吗?我可以做得更好吗?我正在阅读有关mmap()实现的内容,但我并不是100%理解它们.输入文件只是带有*nix行终止的文本字符串.
编辑:建议替代方案的后续问题:任何替代方案(减去增加流缓冲区大小)是否意味着我编写了一个解析每个字符的解析器?我有点像流的简单语法,但如果我需要速度,我可以重新写一些更细节的东西.将整个文件读入内存是一个可行的选择,它只有2mb左右.
编辑#2: 我发现对我的减速是由于设置插入,但对于那些仍然有兴趣加快逐行文件IO的人,请在这里阅读答案并查看Matthieu M.的关于这个主题的继续.
我正在使用Razor创建一个新项目asp.net mvc3,并希望将LogOn转换为ajax请求.
HTML
@using (Ajax.BeginForm("LogOn", "Account", new AjaxOptions { HttpMethod="post", OnSuccess="LoginSubmitted"}))
{
}
Run Code Online (Sandbox Code Playgroud)
调节器
if (Request.IsAjaxRequest())
{
return Json(new { ResultMessage = "Username or password provided is incorrect"});
}
else
{
ModelState.AddModelError("", "The user name or password provided is incorrect.");
}
Run Code Online (Sandbox Code Playgroud)
其他一切都是一样的.
首先,看着Fiddler的http响应,我注意到没有x-requested-with标头.所以我补充一下
<input type="hidden" name="X-Requested-With" value="XMLHttpRequest" />
Run Code Online (Sandbox Code Playgroud)
这似乎工作,但现在我收到的是一个Json对象,它没有被解析,而谷歌Chrome只是通过发回一个应用程序/ json文档将Json渲染到屏幕.所有脚本都已到位.
我也这样做了:
@using (Ajax.BeginForm("Submit", "home", new AjaxOptions { HttpMethod = "Post", OnSuccess="LoginSubmitted"}))
{
}
@section head
{
<script type="text/javascript">
function LoginSubmitted(res) {
alert(res.Message);
}
</script>
}
public ActionResult Submit(string id)
{ …Run Code Online (Sandbox Code Playgroud) 如何阻止GA跟踪页面标题?设置_setDetectTitle为false仍将请求中的页面标题发送到GA服务器(utmdt).由于隐私问题,我不希望页面标题离开浏览器.有任何想法吗?
我想在两个不同的视图中显示和隐藏标签栏.我使用了代码
self.hidesBottomBarWhenPushed = YES;
Run Code Online (Sandbox Code Playgroud)
它在第一个视图和第二个视图中正常工作我使用相同的东西显示Tabbar,但回到第一个视图它不工作.我使用的代码返回是
[[self navigationController] popViewControllerAnimated:YES];
Run Code Online (Sandbox Code Playgroud)
我不能在这里使用pushViewController,因为许多类重定向到这个特定的视图.当我弹出视图控制器时,我想隐藏标签栏.请给我一个解决方案