syntax error: non-declaration statement outside function body

在函数外部使用形如:name:="mark"这样语句会出现 syntax error: non-declaration statement outside function body

package main

import "fmt"

var age uint8  // ok
var age1 uint8 = 18  // ok
var age2 = 18  // ok
age3 := 18  // error
// 出错的原因在于 age3 := 18实际上是两条语句 var age3 int + age3 = 18
// 然而age3 = 18这样的语句是不能再函数体之外执行的
// 就行下面两行代码
ag1 = 29 // error
age2 = 21 // error

func main() {
    fmt.Println("...")
}

原文地址:https://www.cnblogs.com/endurance9/p/10335937.html

时间: 2024-10-11 06:30:21

syntax error: non-declaration statement outside function body的相关文章

JS function document.onclick(){}报错Syntax error on token "function", delete this token

JS function document.onclick(){}报错Syntax error on token "function", delete this token function document.onclick() //任意点击时关闭该控件 //ie6的情况可以由下面的切换焦点处理代替 {    with(window.event)   { if (srcElement != outObject && srcElement != outButton)    

突然出现错误gdiplustypes.h(280): error C2059: syntax error : 'constant'等未知错误

gdiplustypes.h(280): error C2059: syntax error : 'constant'gdiplustypes.h(280): error C2238: unexpected token(s) preceding ';'gdiplustypes.h(281): error C2059: syntax error : 'constant'gdiplustypes.h(281): error C2238: unexpected token(s) preceding '

Laravel 5.4 migrate报错:Syntax error or access violation: 1071 Specified key was too long; max key length is 767 bytes (SQL: alter table `users` add unique `us ers_email_unique`(`email`))

Laravel 5.4 migrate报错:Syntax error or access violation: 1071 Specified key was too long; max key length is 767 bytes (SQL: alter table `users` add unique `us     ers_email_unique`(`email`)) public function up() { Schema::create('users', function (Blu

ajaxFileUpload SyntaxError: syntax error

在使用ajaxFileUpload上传文件时,Chrome没问题,IE和Firefox出错,Firefox报SyntaxError: syntax error错误 JS代码如下: $.ajaxFileUpload( { url : 'FileUpload.do', secureuri : false, fileElementId : 'imgFile', dataType : 'json', success : function(data, status) { //... }, error :

HiveServer2 的jdbc方式创建udf的修改(add jar 最好不要使用),否则会造成一场 java.sql.SQLException: Error while processing statement: null

自从Hive0.13.0开始,使用HiveServer2 的jdbc方式创建udf的临时函数的方法由: ADD JAR ${HiveUDFJarPath} create TEMPORARY function md5  as 'com.hugedata.hive.udf.codec.UDFMd5'; 改为:     create TEMPORARY function md5  as 'com.hugedata.hive.udf.codec.UDFMd5' USING JAR ${HiveUDFJa

使用 trait 时报PHP Parse error: syntax error, unexpected 'use' (T_USE) 这个错误

找一大圈原因, 最后终于找到了, 不是PHP版本的原因[], 是自己把use 写到了类里的方法里了. 这个东东,  不能脱离类单独使用, 否则的话, 会被认为是命名空间了. 测试例子如下 // Trait.php trait CustomerFunctionsTrait { public function plus ( $a = 1, $b = 1 ) { echo $a + $b; } public function minus ( $a = 5, $b = 1 ) { echo $a - $

win 环境下报错 Namespace declaration statement has to be the very first

启动  start_for_win.bat 的时候报错 Namespace declaration statement has to be the very first ,这是由于 bom 的原因,主要由于线上编辑的时候用了记事本修改保持造成问题,只要去掉Bom 就OK, 去bom头文件 <?phpif (isset ( $_GET ['dir'] )) { //config the basedir    $basedir = $_GET ['dir'];} else {    $basedir

同一脚本sh 脚本名 报Syntax error: &quot;(&quot; unexpected而./脚本名不报错,求解!!

同一脚本sh 脚本名 执行时报Syntax error: "(" unexpected:而./脚本名执行不报错,为什么呢 脚本内容如下: function usage(){ echo "usage:$0 url" exit 1 } function check_url(){ wget --spider -q -o /dev/null --tries=1 -T 5 $1 if [ $? -eq 0 ] then echo "$1 is ok" el

laravel migrate时报错:Syntax error or access violation: 1071 Specified key was too long; max key length is 767 bytes

在按照文档执行php artisan migrate时报错. SQLSTATE[42000]: Syntax error or access violation: 1071 Specified key was too long; max key length is 767 bytes (SQL: alter table `users` add unique `users_email_unique`(`email`)) 解决方法 namespace App\Providers; use Illum